/****************************************************************************
	This file is part of Basqet.

	Basqet is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	Basqet is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
    along with Basqet.  If not, see <http://www.gnu.org/licenses/>.

****************************************************************************/

#include "eventfiltercontextmenu.h"

#include <QEvent>
#include <QMouseEvent>

#include <QtDebug>

EventFilterContextMenu::EventFilterContextMenu()
{
}

bool EventFilterContextMenu::eventFilter(QObject *obj, QEvent *event)
{
	if (event && event->type() == QEvent::MouseButtonPress)
	{
		QMouseEvent *mouseEvent = dynamic_cast<QMouseEvent*>(event);

		if (mouseEvent && mouseEvent->button() == Qt::RightButton)
		{
			qDebug() << "Captured the context-menu-click";
			emit contextMenuRequested();
			return true;
		}
	}

	return QObject::eventFilter(obj, event);

}

void EventFilterContextMenu::installIn(QObject* target,  QObject* listener)
{

	connect(this, SIGNAL(undo()), listener, SLOT(undo()));
	connect(this, SIGNAL(redo()), listener, SLOT(redo()));

	target->installEventFilter(this);
}
